#!/usr/bin/python3
# -*- coding: utf-8 -*-
from rest_framework import permissions


class IsOwnerOrReadOnly(permissions.BasePermission):
    """
    自定义权限，只允许对象的所有者对其进行编辑。
    """

    def has_object_permission(self, request, view, obj):
        # 允许对任何请求授予读取权限，
        # 因此，我们将始终允许GET、HEAD或OPTIONS请求。
        if request.method in permissions.SAFE_METHODS:
            return True

        # 写入权限只允许给代码段的所有者。
        return obj.owner == request.user
